Shared communication systems, in which a communications resource is used to support more than one type of communication service, are well known in the art. One example of such a shared system would be a Time Division Multiplexed (TDM) communication system designed to support multiple services. In a TDM system, the communication resource, also referred to as a communication link, is divided into a number of time portions, or time slots, of specified length. A given communication service may then be assigned a specified portion of the available time slots, while other time slots may be assigned to other services. Some examples of services that may be supported in such a system include voice communications services, circuit-switched data communications services, and packet-switched data communications services, all of which are well known in the art.
In shared communication systems, one of the main problems encountered is that of allocating portions of the shared resource to each of the supported services such that the best performance possible for each of the services is provided. One method of resource allocation, fixed allocation, permanently allocates portions of a communication resource, often based on average traffic calculations, to each supported service. For example, in a shared TDM communications system, specified time slots are always used for voice traffic, while other specified time slots are always used for packet data traffic, and so on.
Fixed allocation, however, cannot accommodate the varying resource needs of the available services, possibly leading to significant inefficiency in resource utilization. For example, in a TDM system where exactly half of the available time slots are allocated to voice services, and the other half to packet data services, any time in which the traffic requirements of each service were not equally balanced would result in under-utilization of the communication resource. Since traffic demands on a system are rarely fixed, and in fact may vary widely over the course of time, resource utilization inefficiency may be quite large.
Dynamic resource allocation can be achieved by determining the best allocation of resources at a given moment in time, and then allocating the resources to each of the services. Such dynamic allocation of resources requires that a controlling entity communicate the current resource allocation to users of the system.
In a TDM communication system, for example, the time slots on the communication link may be further grouped into a series of frames, each of which contains a fixed number of time slots. Included in each frame is a control field, i.e., dedicated "out-of-band" control signaling. A central controller, acting as a slot allocator, indicates the slot allocation for each frame in the respective control field. For instance, in a given frame, there may be a large number of data packets to send, but only one ongoing voice communication. Thus, the control field for the given frame would indicate one time slot for voice service and the remaining time slots for packet data service. The control fields of subsequent frames would similarly designate the allocation of time slots to the different types of services.
The control fields in each frame represent additional overhead which cannot be used for communications services, thereby creating an inefficiency. In particular, if the allocation scheme does not change over the course of many frames, the control fields merely repeat redundant information. The frames could be designed to contain a larger number of TDM slots, thereby reducing the control field overhead. However, if resource requirements of one or more of the services changes on a frequent basis (e.g., voice traffic consisting of relatively short messages that come in "bursts"), there will be excessive delays, due to the larger number of time slots per frame, in re-allocating resources to the services.
An alternative to "out-of-band" signaling is "in-band" signaling, in which the control signaling is done as-needed using that portion of the communication resource normally allocated to supported communication services. This reduces the overhead inefficiencies that occur with out-of-band signaling. However, in-band signaling is difficult to implement in many circumstances. One reason is that it may interfere unacceptably with user communications, since it uses the same resource. Also, complexity may be increased if communication units need to search for signaling when there is no a priori knowledge of where the signaling will occur.
Therefore, the need exists for a method of dynamic resource allocation requiring minimal signaling overhead on the communication resources, and in which the frequency of signaling messages adapts to changing traffic conditions. Also, it is desired that the signaling messages occur at predictable times, such that they do not interfere with user communications services.